package cn.zm.app.service;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import cn.zm.app.pojo.AppCategory;
import cn.zm.app.pojo.AppInfo;
import cn.zm.app.pojo.AppVersion;
import cn.zm.app.pojo.DataDictionary;


public interface CategoryService {
	
	
	/*
	 * 查询一级目录
	 */
	public List<AppCategory> categoryList1();
	
	/*
	 * 查询二级目录
	 */
	public List<AppCategory> categoryList2();
	
	/*
	 * 查询三级目录
	 */
	public List<AppCategory> categoryList3();
	
	/*
	 * 查询所属平台
	 */
	public List<DataDictionary> dictionaryList1();
	
	/*
	 * 查询APP状态
	 */
	public List<DataDictionary> dictionaryList2();
	
	/*
	 * 上级联动 查询下级目录
	 */
	public List<AppCategory> linkage1( List<String> pid);
	
	/*
	 * 下级联动 查询上级目录
	 */
	public List<AppCategory> linkage2( String pid);
	
	/*
	 * 查询总数量
	 */
	public int selectCount(String softwareName,
			String status,
			String categoryLevel1,
			String categoryLevel2,
			String categoryLevel3,
			String flatformId,
			String devId);
	
	/*
	 * 查询集合
	 */
	public List<AppInfo> appInfoList(String softwareName,
			String status,
			String categoryLevel1,
			String categoryLevel2,
			String categoryLevel3,
			String flatformId,
			String devId,
			int numbs,
			int pageSize);
	
	/*
	 * 查询apkName是否存在
	 */
	public AppInfo toValidateName(String apkName);
	
	/*
	 * 新增appInfo信息
	 */
	public int toaddAppInfo(AppInfo app);
	
	/*
	 * 根据id查询信息
	 */
	public AppInfo selectbyId(int id);
	
	/*
	 * 修改AppInfo
	 */
	public int updatebyId(AppInfo appinfo);
	
	
	/*
	 * 查看版本信息
	 */
	public List<AppVersion> viewAppVersions(String id); 
	
	
	/*
	 * 新增版本信息
	 */
	public int addAppVersion(AppVersion a);
	
	/*
	 * 查询版本id根据appid
	 */
	public int viewAppVersionId(String id);
	
	/*
	 * 根据id更新appid
	 */
	public int modifyAppVersionId(String id,String appid);
	
	/*
	 * 根据版本id查询版本信息
	 */
	public AppVersion viewAppVersionById(String id);
	
	/*
	 * 修改版本信息
	 */
	public int modifyAppVersion(AppVersion appver);
	
	/*
	 * 查看信息
	 */
	public AppInfo viewAppInfo(String id);
	
	/*
	 * 删除版本通过appid
	 */
	public int modifyAppVersion(String id);
	
	/*
	 * 删除appinfo通过id
	 */
	public int modifyAppInfo(String id);
	
}
